#ifndef MIANWINDOW_H
#define MIANWINDOW_H

#include <QLabel>
#include <QThread>
#include <QMessageBox>
#include <QMainWindow>
#include "ui_qt_rtsp_show.h"//主页
#include "Rtsp_Decod.h"
#include "System_Set.h" //配置页
#include "Shutdown_Menu.h"

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT
public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
    Rtsp_Decod *rtspDecoder; // 用于解码RTSP流的实例
    QLabel *videoLabel; // 用于显示视频帧的标签
    QThread *decodeThread;//用于运行解码循环的子线程

private slots:
    void updateFrame(const QImage &frame); // 用于更新视频帧的槽函数
    void switch_rtsp_status_clicked();//相应按键事件
    void poweroff_fun_clicked();//关机事件
    void shutdown_action();
    void restart_action();
    void settings_action();
};
#endif
